package org.example.ai.model.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 
 * </p>
 *
 * @author author
 * @since 2025-01-17
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("community_content")
public class CommunityContent implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 内容ID，自增整数，作为主键，唯一标识每条社区内容
     */
    @TableId(value = "content_id", type = IdType.AUTO)
    private Integer contentId;

    /**
     * 内容标题，字符串类型，长度为255，不能为空
     */
    private String title;

    /**
     * 内容类型，字符串类型，长度为50，用于标识内容的类型，如“对话”“美妆”“设计”等
     */
    private String contentType;

    /**
     * 内容描述，文本类型，用于存储内容的简要描述
     */
    private String description;

    /**
     * 发布者用户ID，整数类型，不能为空，作为外键关联用户表，标识内容的发布者
     */
    private Integer userId;

    /**
     * 发布时间，日期时间类型，不能为空，默认值为当前时间戳
     */
    private LocalDateTime publishTime;

    /**
     * 点赞数，整数类型，默认值为0
     */
    private Integer likeCount;

    /**
     * 图片路径或链接，字符串类型，存储与内容相关的图片
     */
    private String imageUrl;


}
